package com.app.utils;

import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.widget.Toast;

import com.app.application.QXApplication;

/**
 * 时间:2015-7-6
 * 公司:DDY
 * 作者:LBH
 * 功能:控制台输出
 * @author Administrator
 *
 */
public class SystemPrintl {
	/**
	 * 控制台输出 KEY值
	 */
	private static final String TAG_KEY_TEXT = "DDY-L";
	
	/**
	 * 控制台输出 
	 * 调试时使用 true
	 * 发布时使用 false
	 *
	 * 在最后阶段 使用 isApkDebugable
	 */
	public static final boolean isDebug = true;

	
	/**
	 * 屏幕Toast
	 * 调试时使用 true
	 * 发布时使用 false
	 */
	private static final boolean isShow = false;


	/**
	 * 但是当我们没在AndroidManifest.xml中设置其debug属性时:
	 * 使用Eclipse运行这种方式打包时其debug属性为true,使用Eclipse导出这种方式打包时其debug属性为法false.
	 * 在使用ant打包时，其值就取决于ant的打包参数是release还是debug.
	 * 因此在AndroidMainifest.xml中最好不设置android:debuggable属性置，而是由打包方式来决定其值.
	 *
	 * <application android:debuggable="true" tools:ignore="HardcodedDebugMode"
	 ....
	 .... />
	 */
	public static boolean isApkDebugable() {
		try {
			ApplicationInfo info= QXApplication.getContext().getApplicationInfo();
			return (info.flags&ApplicationInfo.FLAG_DEBUGGABLE)!=0;
		} catch (Exception e) {
		}
		return false;
	}

	/**
	 * 控制台输出 标记(DDY-L)
	 * @param outMsg
	 */
	public static void systemPrintl(String outMsg){
		if(isDebug)
			System.out.println(TAG_KEY_TEXT+":"+outMsg);
	}
	
	/**
	 * 控制台输出
	 * @param console 标记
	 * @param outMsg  内容
	 */
	public static void systemPrintlKey(String console,String outMsg){
		if(isDebug)
			System.out.println(console+":"+outMsg);
	}
	
	
	/** 
     * 短时间显示Toast 
     *  
     * @param context 
     * @param message 
     */  
    public static void showShort(Context context, CharSequence message){  
        if (isShow)  
            Toast.makeText(context, message, Toast.LENGTH_SHORT).show();  
    }  
  
    /** 
     * 短时间显示Toast 
     *  
     * @param context 
     * @param message 
     */  
    public static void showShort(Context context, int message){  
        if (isShow)  
            Toast.makeText(context, message, Toast.LENGTH_SHORT).show();  
    }  
  
    /** 
     * 长时间显示Toast 
     *  
     * @param context 
     * @param message 
     */  
    public static void showLong(Context context, CharSequence message){  
        if (isShow)  
            Toast.makeText(context, message, Toast.LENGTH_LONG).show();  
    }  
  
    /** 
     * 长时间显示Toast 
     *  
     * @param context 
     * @param message 
     */  
    public static void showLong(Context context, int message){  
        if (isShow)  
            Toast.makeText(context, message, Toast.LENGTH_LONG).show();  
    }  
  
    /** 
     * 自定义显示Toast时间 
     *  
     * @param context 
     * @param message 
     * @param duration 
     */  
    public static void show(Context context, CharSequence message, int duration){  
        if (isShow)  
            Toast.makeText(context, message, duration).show();  
    }  
  
    /** 
     * 自定义显示Toast时间 
     *  
     * @param context 
     * @param message 
     */
    public static void show(Context context, int message){
        if (isShow)  
            Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
    }  

    /**
     * 未完功能
     */
    public static void show(){
        if (isShow)
            Toast.makeText(QXApplication.getContext(), "功能在书写中", Toast.LENGTH_SHORT).show();
    }
}
